home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / lib / perl5 / Glib / KeyFile.pod < prev    next >
Text File  |  2009-04-29  |  12KB  |  649 lines

  1. =head1 NAME
  2.  
  3. Glib::KeyFile -  Parser for .ini-like files
  4.  
  5. =cut
  6.  
  7. =for position SYNOPSIS
  8.  
  9. =head1 SYNOPSIS
  10.  
  11.   use Glib;
  12.  
  13.   $data .= $_ while (<DATA>);
  14.  
  15.   $f = Glib::KeyFile->new;
  16.   $f->load_from_data($data);
  17.   if ($f->has_group('Main') && $f->has_key('Main', 'someotherkey')) {
  18.       $val = $f->get_integer('Main', 'someotherkey');
  19.       print $val . "\n";
  20.   }
  21.   0;
  22.   __DATA__
  23.   # a comment
  24.   [MainSection]
  25.   somekey=somevalue
  26.   someotherkey=42
  27.   someboolkey=true
  28.   listkey=1;1;2;3;5;8;13;21
  29.   localekey=Good Morning
  30.   localekey[it]=Buon giorno
  31.   localekey[es]=Buenas dias
  32.   localekey[fr]=Bonjour
  33.  
  34. =for position DESCRIPTION
  35.  
  36. =head1 DESCRIPTION
  37.  
  38. B<Glib::KeyFile> lets you parse, edit or create files containing groups of
  39. key-value pairs, which we call key files for lack of a better name. Several
  40. freedesktop.org specifications use key files now, e.g the Desktop Entry
  41. Specification and the Icon Theme Specification.
  42.  
  43. The syntax of key files is described in detail in the Desktop Entry
  44. Specification, here is a quick summary: Key files consists of groups of
  45. key-value pairs, interspersed with comments.
  46.  
  47. =cut
  48.  
  49.  
  50.  
  51. =for object Glib::KeyFile Parser for .ini-like files
  52. =cut
  53.  
  54.  
  55.  
  56.  
  57. =head1 METHODS
  58.  
  59. =head2 keyfile = Glib::KeyFile-E<gt>B<new> 
  60.  
  61. =head2 boolean = $key_file->B<get_boolean> ($group_name, $key)
  62.  
  63. =over
  64.  
  65. =item * $group_name (string) 
  66.  
  67. =item * $key (string) 
  68.  
  69. =back
  70.  
  71. Retrieves a boolean value from $key inside $group_name.
  72.  
  73. May croak with a L<Glib::Error> in $@ on failure.
  74.  
  75. =head2 list = $key_file->B<get_boolean_list> ($group_name, $key)
  76.  
  77. =over
  78.  
  79. =item * $group_name (string) 
  80.  
  81. =item * $key (string) 
  82.  
  83. =back
  84.  
  85. Retrieves a list of booleans from $key inside $group_name.
  86.  
  87. May croak with a L<Glib::Error> in $@ on failure.
  88.  
  89. =head2 $key_file-E<gt>B<set_boolean_list> ($group_name, $key, ...)
  90.  
  91. =over
  92.  
  93. =item * $group_name (string) 
  94.  
  95. =item * $key (string) 
  96.  
  97. =item * ... (list) list of booleans
  98.  
  99. =back
  100.  
  101. Sets a list of booleans in $key inside $group_name.  If $key cannot be found
  102. then it is created.  If $group_name cannot be found then it is created.
  103.  
  104. =head2 $key_file-E<gt>B<set_boolean> ($group_name, $key, $value)
  105.  
  106. =over
  107.  
  108. =item * $group_name (string) 
  109.  
  110. =item * $key (string) 
  111.  
  112. =item * $value (boolean) 
  113.  
  114. =back
  115.  
  116. Sets a boolean value to $key inside $group_name.
  117. If $key is not found, it is created.
  118.  
  119. =head2 string = $key_file-E<gt>B<get_comment> ($group_name=undef, $key=undef)
  120.  
  121. =over
  122.  
  123. =item * $group_name (string or undef) 
  124.  
  125. =item * $key (string or undef) 
  126.  
  127. =back
  128.  
  129. Retreives a comment above $key from $group_name.  If $key is undef then
  130. $comment will be read from above $group_name.  If both $key and $group_name
  131. are undef, then $comment will be read from above the first group in the file.
  132.  
  133. May croak with a L<Glib::Error> in $@ on failure.
  134.  
  135. =head2 $key_file-E<gt>B<set_comment> ($group_name, $key, $comment)
  136.  
  137. =over
  138.  
  139. =item * $group_name (string or undef) 
  140.  
  141. =item * $key (string or undef) 
  142.  
  143. =item * $comment (string) 
  144.  
  145. =back
  146.  
  147. Places a comment above $key from $group_name.  If $key is undef then $comment
  148. will be written above $group_name.  If both $key and $group_name are undef,
  149. then $comment will be written above the first group in the file.
  150.  
  151. May croak with a L<Glib::Error> in $@ on failure.
  152.  
  153. =head2 double = $key_file-E<gt>B<get_double> ($group_name, $key)
  154.  
  155. =over
  156.  
  157. =item * $group_name (string) 
  158.  
  159. =item * $key (string) 
  160.  
  161. =back
  162.  
  163. Retrieves a double value from $key inside $group_name.
  164.  
  165. May croak with a L<Glib::Error> in $@ on failure.
  166.  
  167. Since: glib 2.12
  168.  
  169. =head2 list = $key_file->B<get_double_list> ($group_name, $key)
  170.  
  171. =over
  172.  
  173. =item * $group_name (string) 
  174.  
  175. =item * $key (string) 
  176.  
  177. =back
  178.  
  179. Retrieves a list of doubles from $key inside $group_name.
  180.  
  181. May croak with a L<Glib::Error> in $@ on failure.
  182.  
  183. Since: glib 2.12
  184.  
  185. =head2 $key_file-E<gt>B<set_double_list> ($group_name, $key, ...)
  186.  
  187. =over
  188.  
  189. =item * $group_name (string) 
  190.  
  191. =item * $key (string) 
  192.  
  193. =item * ... (list) list of doubles
  194.  
  195. =back
  196.  
  197. Sets a list of doubles in $key inside $group_name.  If $key cannot be found
  198. then it is created.  If $group_name cannot be found then it is created.
  199.  
  200. Since: glib 2.12
  201.  
  202. =head2 $key_file-E<gt>B<set_double> ($group_name, $key, $value)
  203.  
  204. =over
  205.  
  206. =item * $group_name (string) 
  207.  
  208. =item * $key (string) 
  209.  
  210. =item * $value (double) 
  211.  
  212. =back
  213.  
  214. Sets a double value to $key inside $group_name.
  215. If $key is not found, it is created.
  216.  
  217. Since: glib 2.12
  218.  
  219. =head2 list = $key_file->B<get_groups>
  220.  
  221. Returns the list of groups inside the key_file.
  222.  
  223. =head2 boolean = $key_file-E<gt>B<has_group> ($group_name)
  224.  
  225. =over
  226.  
  227. =item * $group_name (string) 
  228.  
  229. =back
  230.  
  231. Checks whether $group_name is present in $key_file.
  232.  
  233. =head2 boolean = $key_file-E<gt>B<has_key> ($group_name, $key)
  234.  
  235. =over
  236.  
  237. =item * $group_name (string) 
  238.  
  239. =item * $key (string) 
  240.  
  241. =back
  242.  
  243. Checks whether $group_name has $key in it.
  244.  
  245. May croak with a L<Glib::Error> in $@ on failure.
  246.  
  247. =head2 integer = $key_file->B<get_integer> ($group_name, $key)
  248.  
  249. =over
  250.  
  251. =item * $group_name (string) 
  252.  
  253. =item * $key (string) 
  254.  
  255. =back
  256.  
  257. Retrieves an integer value from $key inside $group_name.
  258.  
  259. May croak with a L<Glib::Error> in $@ on failure.
  260.  
  261. =head2 list = $key_file->B<get_integer_list> ($group_name, $key)
  262.  
  263. =over
  264.  
  265. =item * $group_name (string) 
  266.  
  267. =item * $key (string) 
  268.  
  269. =back
  270.  
  271. Retrieves a list of integers from $key inside $group_name.
  272.  
  273. May croak with a L<Glib::Error> in $@ on failure.
  274.  
  275. =head2 $key_file-E<gt>B<set_integer_list> ($group_name, $key, ...)
  276.  
  277. =over
  278.  
  279. =item * $group_name (string) 
  280.  
  281. =item * $key (string) 
  282.  
  283. =item * ... (list) list of integers
  284.  
  285. =back
  286.  
  287. Sets a list of doubles in $key inside $group_name.  If $key cannot be found
  288. then it is created.  If $group_name cannot be found then it is created.
  289.  
  290. =head2 $key_file-E<gt>B<set_integer> ($group_name, $key, $value)
  291.  
  292. =over
  293.  
  294. =item * $group_name (string) 
  295.  
  296. =item * $key (string) 
  297.  
  298. =item * $value (integer) 
  299.  
  300. =back
  301.  
  302. Sets an integer value to $key inside $group_name.
  303. If $key is not found, it is created.
  304.  
  305. =head2 list = $key_file->B<get_keys> ($group_name)
  306.  
  307. =over
  308.  
  309. =item * $group_name (string) 
  310.  
  311. =back
  312.  
  313. Returns the list of keys inside a group of the key file.
  314.  
  315. May croak with a L<Glib::Error> in $@ on failure.
  316.  
  317. =head2 $key_file-E<gt>B<set_list_separator> ($separator)
  318.  
  319. =over
  320.  
  321. =item * $separator (string) 
  322.  
  323. =back
  324.  
  325. Sets the list separator character.
  326.  
  327. =head2 boolean = $key_file-E<gt>B<load_from_data> ($buf, $flags)
  328.  
  329. =over
  330.  
  331. =item * $buf (scalar) 
  332.  
  333. =item * $flags (Glib::KeyFileFlags) 
  334.  
  335. =back
  336.  
  337. Parses a string containing a key file structure.
  338.  
  339. May croak with a L<Glib::Error> in $@ on failure.
  340.  
  341. =head2 boolean = $key_file->B<load_from_data_dirs> ($file, $flags)
  342.  
  343. =head2 (boolean, scalar) = $key_file->B<load_from_data_dirs> ($file, $flags)
  344.  
  345. =over
  346.  
  347. =item * $file (string) 
  348.  
  349. =item * $flags (Glib::KeyFileFlags) 
  350.  
  351. =back
  352.  
  353.  
  354. Parses a key file, searching for it inside the data directories.
  355. In scalar context, it returns a boolean value (true on success, false otherwise);
  356. in array context, it returns a boolean value and the full path of the file.
  357.  
  358. May croak with a L<Glib::Error> in $@ on failure.
  359.  
  360. =head2 boolean = $key_file->B<load_from_dirs> ($file, $flags, @search_dirs)
  361.  
  362. =head2 (boolean, scalar) = $key_file->B<load_from_dirs> ($file, $flags, @search_dirs)
  363.  
  364. =over
  365.  
  366. =item * $file (string) 
  367.  
  368. =item * $flags (Glib::KeyFileFlags) 
  369.  
  370. =item * ... (list) 
  371.  
  372. =back
  373.  
  374.  
  375. Parses a key file, searching for it inside the specified directories.
  376. In scalar context, it returns a boolean value (true on success, false otherwise);
  377. in array context, it returns a boolean value and the full path of the file.
  378.  
  379. May croak with a L<Glib::Error> in $@ on failure.
  380.  
  381. Since: glib 2.14
  382.  
  383. =head2 boolean = $key_file-E<gt>B<load_from_file> ($file, $flags)
  384.  
  385. =over
  386.  
  387. =item * $file (string) 
  388.  
  389. =item * $flags (Glib::KeyFileFlags) 
  390.  
  391. =back
  392.  
  393. Parses a key file.
  394.  
  395. May croak with a L<Glib::Error> in $@ on failure.
  396.  
  397. =head2 string = $key_file-E<gt>B<get_locale_string> ($group_name, $key, $locale=undef)
  398.  
  399. =over
  400.  
  401. =item * $group_name (string) 
  402.  
  403. =item * $key (string) 
  404.  
  405. =item * $locale (string or undef) 
  406.  
  407. =back
  408.  
  409. Returns the value associated with $key under $group_name translated in the
  410. given $locale if available.  If $locale is undef then the current locale is
  411. assumed.
  412.  
  413. May croak with a L<Glib::Error> in $@ on failure.
  414.  
  415. =head2 list = $key_file-E<gt>B<get_locale_string_list> ($group_name, $key, $locale)
  416.  
  417. =over
  418.  
  419. =item * $group_name (string) 
  420.  
  421. =item * $key (string) 
  422.  
  423. =item * $locale (string) 
  424.  
  425. =back
  426.  
  427.  
  428.  
  429. May croak with a L<Glib::Error> in $@ on failure.
  430.  
  431. =head2 $key_file-E<gt>B<set_locale_string_list> ($group_name, $key, $locale, ...)
  432.  
  433. =over
  434.  
  435. =item * $group_name (string) 
  436.  
  437. =item * $key (string) 
  438.  
  439. =item * $locale (string) 
  440.  
  441. =item * ... (list) 
  442.  
  443. =back
  444.  
  445. Associates a list of string values for $key and $locale under $group_name.
  446. If the translation for $key cannot be found then it is created.
  447.  
  448. =head2 $key_file-E<gt>B<set_locale_string> ($group_name, $key, $locale, $string)
  449.  
  450. =over
  451.  
  452. =item * $group_name (string) 
  453.  
  454. =item * $key (string) 
  455.  
  456. =item * $locale (string) 
  457.  
  458. =item * $string (string) 
  459.  
  460. =back
  461.  
  462. =head2 $key_file-E<gt>B<remove_comment> ($group_name=undef, $key=undef)
  463.  
  464. =over
  465.  
  466. =item * $group_name (string or undef) 
  467.  
  468. =item * $key (string or undef) 
  469.  
  470. =back
  471.  
  472. Removes a comment from a group in a key file.  If $key is undef, the comment
  473. will be removed from above $group_name.  If both $key and $group_name are
  474. undef, the comment will be removed from the top of the key file.
  475.  
  476. May croak with a L<Glib::Error> in $@ on failure.
  477.  
  478. =head2 $key_file-E<gt>B<remove_group> ($group_name)
  479.  
  480. =over
  481.  
  482. =item * $group_name (string) 
  483.  
  484. =back
  485.  
  486. Removes a group from a key file.
  487.  
  488. May croak with a L<Glib::Error> in $@ on failure.
  489.  
  490. =head2 $key_file-E<gt>B<remove_key> ($group_name, $key)
  491.  
  492. =over
  493.  
  494. =item * $group_name (string) 
  495.  
  496. =item * $key (string) 
  497.  
  498. =back
  499.  
  500. Removes a key from $group_name.
  501.  
  502. May croak with a L<Glib::Error> in $@ on failure.
  503.  
  504. =head2 string = $key_file-E<gt>B<get_start_group> 
  505.  
  506. Returns the first group inside a key file.
  507.  
  508. =head2 string = $key_file->B<get_string> ($group_name, $key)
  509.  
  510. =over
  511.  
  512. =item * $group_name (string) 
  513.  
  514. =item * $key (string) 
  515.  
  516. =back
  517.  
  518. Retrieves a string value from $key inside $group_name.
  519.  
  520. May croak with a L<Glib::Error> in $@ on failure.
  521.  
  522. =head2 list = $key_file->B<get_string_list> ($group_name, $key)
  523.  
  524. =over
  525.  
  526. =item * $group_name (string) 
  527.  
  528. =item * $key (string) 
  529.  
  530. =back
  531.  
  532. Retrieves a list of strings from $key inside $group_name.
  533.  
  534. May croak with a L<Glib::Error> in $@ on failure.
  535.  
  536. =head2 $key_file-E<gt>B<set_string_list> ($group_name, $key, ...)
  537.  
  538. =over
  539.  
  540. =item * $group_name (string) 
  541.  
  542. =item * $key (string) 
  543.  
  544. =item * ... (list) list of strings
  545.  
  546. =back
  547.  
  548. Sets a list of strings in $key inside $group_name.  The strings will be escaped
  549. if contain special characters.  If $key cannot be found then it is created.  If
  550. $group_name cannot be found then it is created.
  551.  
  552. =head2 $key_file-E<gt>B<set_string> ($group_name, $key, $value)
  553.  
  554. =over
  555.  
  556. =item * $group_name (string) 
  557.  
  558. =item * $key (string) 
  559.  
  560. =item * $value (string) 
  561.  
  562. =back
  563.  
  564. Sets a string value to $key inside $group_name.  The string will be escaped if
  565. it containes special characters.
  566. If $key is not found, it is created.
  567.  
  568. =head2 string = $key_file-E<gt>B<to_data> 
  569.  
  570. Returns the key file as a string.
  571.  
  572. May croak with a L<Glib::Error> in $@ on failure.
  573.  
  574. =head2 string = $key_file-E<gt>B<get_value> ($group_name, $key)
  575.  
  576. =over
  577.  
  578. =item * $group_name (string) 
  579.  
  580. =item * $key (string) 
  581.  
  582. =back
  583.  
  584. Retrieves the literal value of $key inside $group_name.
  585.  
  586. May croak with a L<Glib::Error> in $@ on failure.
  587.  
  588. =head2 $key_file-E<gt>B<set_value> ($group_name, $key, $value)
  589.  
  590. =over
  591.  
  592. =item * $group_name (string) 
  593.  
  594. =item * $key (string) 
  595.  
  596. =item * $value (string) 
  597.  
  598. =back
  599.  
  600. Sets the literal value of $key inside $group_name.
  601. If $key cannot be found, it is created.
  602. If $group_name cannot be found, it is created.
  603.  
  604.  
  605.  
  606. =cut
  607.  
  608.  
  609. =head1 ENUMS AND FLAGS
  610.  
  611. =head2 flags Glib::KeyFileFlags
  612.  
  613.  
  614.  
  615. =over
  616.  
  617. =item * 'none' / 'G_KEY_FILE_NONE'
  618.  
  619. =item * 'keep-comments' / 'G_KEY_FILE_KEEP_COMMENTS'
  620.  
  621. =item * 'keep-translations' / 'G_KEY_FILE_KEEP_TRANSLATIONS'
  622.  
  623. =back
  624.  
  625.  
  626.  
  627.  
  628. =cut
  629.  
  630.  
  631. =head1 SEE ALSO
  632.  
  633. L<Glib>
  634.  
  635.  
  636. =cut
  637.  
  638.  
  639. =head1 COPYRIGHT
  640.  
  641. Copyright (C) 2003-2009 by the gtk2-perl team.
  642.  
  643. This software is licensed under the LGPL.  See L<Glib> for a full notice.
  644.  
  645.  
  646.  
  647. =cut
  648.  
  649.